// pages/coupon/coupon.js
//1. 数据库初始化
var db = wx.cloud.database();
var sliderWidth = 96; // 需要设置slider的宽度，用于计算中间位置
const app = getApp()
Page({

  /**
   * 页面的初始数据
   */
  data: {
    tabs: ["可领", "已领", "失效", "兑换"],
    activeIndex: 0,
    sliderOffset: 0,
    sliderLeft: 0,
    productList:[],//对应分类下的商品列表
    productoList:[],//对应分类下的商品列表
    newcoupon:{}, //
    count: 0
  },
  /**
     * 生命周期函数--监听页面加载
  */
  onLoad: function (options) {
    var that = this;
    wx.getSystemInfo({
      success: function (res) {
        that.setData({
          sliderLeft: (res.windowWidth / that.data.tabs.length - sliderWidth) / 2,
          sliderOffset: res.windowWidth / that.data.tabs.length * that.data.activeIndex
        });
      }
    });
    that.setData({
      activeIndex: options.activeIndexData
    })

    this.getproductList()
  },
  /**
   * 获取对应分类下的商品列表
   */
  getproductList(){
    db.collection("coupon").get({
      success:res=>{
        console.log(res.data);
        this.setData({
          productoList:res.data
        })
        this.getjiexi()
        console.log(this.data.productList);
      }
    })
  },
  /**
   * 解析
   * @param {*} e 
   */
  getjiexi(){
    console.log(this.data.productoList);
    if(this.data.productoList.length!=0){
      this.data.productoList.forEach(element => {
        db.collection("product").where({
          _id:element.productId
        }).get({
          success:res1=>{
            console.log(res1.data);
            this.setData({
              productList:this.data.productList.concat(res1.data)
            })
          }
        })
      });
    }
    console.log(this.data.productList);
  },
  /**
   * 领取优惠券
   * @param {} e 
   */
  addUUserCoupon(e){
    //获取storage中登录的用户信息
    var user = wx.getStorageSync('user')
    //接收data-传递的参数
    var product = e.currentTarget.dataset.product;
    //接收data-传递的参数
    var coupon = e.currentTarget.dataset.coupon;
    console.log(product);
    /**
     * 新增的数据
     */
    db.collection("usercoupon").add({
      data:{    //新增的数据
        userId:user._id,
        couponId:coupon._id
      },
      success:res=>{
        console.log(res);
      }
    })

    /**
     * 修改数据
     */
    db.collection("coupon").doc(coupon._id)
    .get({
      //success:查询成功的回调函数   res:返回的结果
      success:res=>{
        console.log(res.data);
        var count = res.data.count
        console.log(count);
        count--
        console.log(count);
        this.setData({
          newcoupon:res.data,
          count:count
        })
        console.log(this.data.newcoupon);
        this.updatecount(coupon)
        console.log(this.data.count);
      }
    })
  },

  updatecount(coupon){
    if(this.data.count!=0){
      console.log(this.data.count);
      db.collection("coupon").doc(coupon._id).update({
        data: {
          count:this.data.count
        },
        complete:res1=>{
          console.log(res1)
          wx.showToast({
            title: '成功',
            icon: 'success',
          })
        }
      })
    }
  },

  tabClick: function (e) {
    this.setData({
      sliderOffset: e.currentTarget.offsetLeft,
      activeIndex: e.currentTarget.id
    })
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {
    //判断用户是否登录
    if(wx.getStorageSync('user')){
      this.setData({
        isLogin:true
      })
    }else{
      this.setData({
        isLogin:false
      })
      wx.showModal({
        title: '请先登录',
        content: '点击跳转登录页面',
        success (res) {
          if (res.confirm) {
            wx.navigateTo({
              url: '/pages/login/login',
            })
          } else if (res.cancel) {
            console.log('用户点击取消')
            wx.navigateTo({
              url: '/pages/login/login',
            })
          }
        }
      })
    }
  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  }
})